package bairui.international.controller.personnel.employee;

/**
 *
 */
@SuppressWarnings("serial")
abstract 
public class Module_Detail_OutputModel
 extends bairui.international.model.domain.jpa.TB_Admin
{

	/**
	 * 构造函数
	 */
	@lombok.Getter @com.fasterxml.jackson.annotation.JsonIgnore
	private bairui.international.model.domain.jpa.TB_Admin _origin;

	public Module_Detail_OutputModel(
		bairui.international.model.domain.jpa.TB_Admin bean
	) {
		this._origin = bean;
		if(null != bean){
			this.setId(bean.getId());
			this.setName(bean.getName());
			this.setNumber(bean.getNumber());
			this.setMobilePhone(bean.getMobilePhone());
			this.setFixedPhone(bean.getFixedPhone());
			this.setComment(bean.getComment());
			this.setMail(bean.getMail());
			this.setOrderValue(bean.getOrderValue());
			this.setGender(bean.getGender());
			this.setState(bean.getState());
		}
		/* 附加属性赋值前 */
		assign_before();
		/* 附加属性赋值 */
		this.setDepartmentName(this.assignDepartmentName());
		this.setPositionName(this.assignPositionName());
	}
	

	/**
	 * 非继承属性
	 */
	abstract protected void assign_before();

	/** 部门 */
	@lombok.Getter @lombok.Setter 
	private String departmentName;
	/** 赋值部门 */
	abstract protected String assignDepartmentName();

	/** 职位 */
	@lombok.Getter @lombok.Setter 
	private String positionName;
	/** 赋值职位 */
	abstract protected String assignPositionName();

	/**
	 * json忽略注解覆盖继承属性
	 */

	/**
	 * 对象转字符串输出
	 */

}
